import Vue from 'vue'
import Vuex from 'vuex'
// 引入封装好的 localStorage
import { setItem, getItem, reomveItem } from '../utils/ls'

Vue.use(Vuex)

export default new Vuex.Store({
  state: {
    // token
    // 先从本地去取token，如果本地也没有，那就是{}
    tokenInfo: getItem('heima-token') || {},
    userInfo: {} // 用户数据，目前是为了小智聊天里同步用户的头像
  },
  mutations: {
    // 设置token
    setToken (state, payload) {
      state.tokenInfo = payload
      // 在本地在存储一份token对象
      setItem('heima-token', payload)
    },
    // 删除token
    removeToken (state, payload) {
      // 删除数据里的token
      state.tokenInfo = {}
      // 删除本地存储里的token
      reomveItem('heima-token')
    },
    // 设置用户数据
    setUserInfo (state, payload) {
      state.userInfo = payload
    }
  },
  actions: {
  },
  modules: {
  }
})
